package com.order.controller.sys;

import java.util.Map;
import org.eclipse.jetty.util.ajax.JSON;
import com.jfinal.aop.Before;
import com.jfinal.core.Controller;
import com.jfinal.ext.route.ControllerBind;
import com.order.config.Consts;
import com.order.interceptor.sys.LoginInterceptor;
import com.order.model.sys.SysRoleMenu;

/** 
* @类名: RoleMenuController 
* @描述: 角色菜单控制器
* @作者: 林勃 
* @时间: 2014年4月14日 上午11:21:50 
*  
*/ 
@ControllerBind(controllerKey = Consts.SYS + "rolemenu")
public class RoleMenuController extends Controller {

	private static String msg = "";
	private static SysRoleMenu rolemenu = new SysRoleMenu();
	/** 
	* @Title: getRoleMenuJson 
	* @描述: 执行查询
	* @param    
	* @return void    
	* @throws 
	*/ 
	public void getRoleMenuJson(){
		int pagesize = (int)getParaToInt("pagesize");
		int page = (int)getParaToInt("page");
		int moduleId = getParaToInt("moduleid", 0);
		int menuId = getParaToInt("menuid", 0);
		Map<String, Object> map = null;
		if(menuId != 0){
			map = SysRoleMenu.dao.getRoleMenuByMenuId(page,pagesize,menuId);
		}else{
			map = SysRoleMenu.dao.getRoleMenuByModuleId(page,pagesize,moduleId);
		}
		renderJson(map);
	}
	
	/** 
	* @Title: saveOrUpdate 
	* @描述:    保存单条
	* @throws 
	*/ 
	@Before(LoginInterceptor.class)
	public void saveOrUpdate(){
		String json = getPara("json");
		rolemenu.getObj(json);
		if(rolemenu.get("ID") != null) {
			rolemenu.myUpdate();
			msg = "温馨提示：修改成功！";
		} else {
			msg = rolemenu.mySave();
		}
		setAttr("msg", msg);
		renderJson();
	}
	
	/** 执行删除 */
	@Before(LoginInterceptor.class)
	public void delete(){
		@SuppressWarnings("unchecked")
		Map<String, Object> map = (Map<String, Object>) JSON.parse(getPara("json"));
		int id = Integer.valueOf(map.get("ID").toString());
		if (SysRoleMenu.dao.deleteById(id)) {	
			msg = "温馨提示：删除成功!";
		} else {
			msg = "温馨提示：未找到该记录,请选择要删的行。";
		}
		setAttr("msg", msg);
		renderJson();
	}
}
